import { IPSAppView } from './ipsapp-view';
import { IPSNavigateParamContainer } from '../../control/ipsnavigate-param-container';
import { IPSLanguageRes } from '../../res/ipslanguage-res';

/**
 *
 * @export
 * @interface IPSAppViewRef
 */
export interface IPSAppViewRef extends IPSNavigateParamContainer {
  /**
   * 引用视图高度
   * @type {number}
   * @default 0
   */
  height: number;

  /**
   * 打开模式
   * @type {string}
   */
  openMode: string;

  /**
   * 引用者
   * @type {IModel}
   */
  owner: IModel;

  /**
   * 视图父数据对象
   * @type {IModel}
   */
  parentDataJO: IModel;

  /**
   * 引用视图打开模式
   * @type {string}
   */
  realOpenMode: string;

  /**
   * 引用视图标题
   * @type {string}
   */
  realTitle: string;

  /**
   * 引用视图标题语言资源
   *
   * @type {IPSLanguageRes}
   */
  getRealTitlePSLanguageRes(): IPSLanguageRes | null;

  /**
   * 引用视图
   *
   * @type {IPSAppView}
   */
  getRefPSAppView(): IPSAppView | null;

  /**
   * 视图参数JO对象
   * @type {IModel}
   */
  viewParamJO: IModel;

  /**
   * 引用视图宽度
   * @type {number}
   * @default 0
   */
  width: number;
}
